package com.IO;

import com.OS.Process;

import java.util.Vector;

/**
 * 计算机设备实体类
 */
public class DCT {
    // 设备名称
    private String name;
    // 占用该设备的进程
    private Process process;
    // 该设备的占用队列
    private Vector<Process> waitingList = new Vector<>();

    /**
     * 打印该设备的等待队列
     * @return
     */
    public String showWaitingList() {
        String s = "";
        for (int i = 0; i < waitingList.size(); i++) {
            s += waitingList.get(i).getName() + ",";
        }
        return s;
    }

    /**
     * 获取设备名称
     * @return
     */
    public String getName() {
        return name;
    }

    /**
     * 修改设备名称
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获得占用该设备的进程
     * @return
     */
    public Process getProcess() {
        return process;
    }

    /**
     * 设置改设备的占用进程
     * @param process
     */
    public void setProcess(Process process) {
        this.process = process;
    }

    /**
     * 返回该设备的等待队列
     * @return
     */
    public Vector<Process> getWaitingList() {
        return waitingList;
    }

    /**
     * 修改该设备的等待队列
     * @param waitingList
     */
    public void setWaitingList(Vector<Process> waitingList) {
        this.waitingList = waitingList;
    }

}
